package com.liwenfeng.diancanspringboot.controller.admin;

import com.liwenfeng.diancanspringboot.common.result.PageResult;
import com.liwenfeng.diancanspringboot.common.result.Result;
import com.liwenfeng.diancanspringboot.pojo.dto.TurnoverPageDTO;
import com.liwenfeng.diancanspringboot.pojo.entity.Turnover;
import com.liwenfeng.diancanspringboot.service.TurnoverService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;

import java.util.List;
import java.util.Map;

@Slf4j
@RestController
@RequestMapping("/admin/turnover")
public class TurnoverController {
    @Autowired
    private TurnoverService turnoverService;

    // 获取正在流水的列表(手机端admin模块）
    @GetMapping("/doingList")
    public Result<List<Turnover>> doingList(){
        List<Turnover> list = turnoverService.getDoingList();
        return Result.success(list);
    }

    // 清台(手机端admin模块）
    @PutMapping("/update")
    public Result<String> update(@RequestBody Turnover turnover){
        log.info("清台：{}",turnover);
        turnoverService.update(turnover);
        return Result.success("更新成功");
    }

    /**
     * 换桌(手机端admin模块）
     * @param map
     * @return
     */
    @PutMapping ("/changePlace")
    public Result<String> changePlace(@RequestBody Map<String,Long> map){
        log.info("流水号：{}",map);

        turnoverService.changePlace(map);
        return Result.success("更新成功");
    }

    /**
     * 流水单分页查询(浏览器端）
     * @param turnoverPageDTO
     * @return PageResult
     */
    @GetMapping("/page")
    public Result<PageResult> page(TurnoverPageDTO turnoverPageDTO){
        log.info("流水分页查询：{}", turnoverPageDTO);
        PageResult pageResult = turnoverService.page(turnoverPageDTO);
        return Result.success(pageResult);
    }
}
